该内容已被发布者删除 该内容被自由微信恢复
文章于 4月1日 上午 9:33 被检测为删除。
查看原文
被用户删除
其他

Patchwork包:R语言的拼图艺术!

小陈的R语言笔记 小陈的R语言笔記 2024-03-31

创建示例图

# 加载所需的库 
library(patchwork)
library(ggplot2)

# 绘制第一个图  
p1 <- ggplot(mtcars, aes(mpg, disp)) +     
  # 设置散点颜色为淡蓝色  
  geom_point(color = "lightblue") +     
  # 设置图的标题为'Plot 1'  
  ggtitle('Plot 1')    

# 绘制第二个图  
p2 <- ggplot(mtcars, aes(gear, disp, group = gear)) +     
  # 设置箱体填充颜色为淡蓝色  
  geom_boxplot(fill = "lightblue") +    
  # 设置图的标题为'Plot 2'  
  ggtitle('Plot 2')    

# 绘制第三个图  
p3 <- ggplot(mtcars, aes(hp, wt, colour = mpg)) +     
  # 绘制散点,并设置点的大小为3  
  geom_point(size = 3) +    
  # 设置颜色渐变,从淡蓝色到钢蓝色  
  scale_color_gradient(low = "lightblue", high = "steelblue") +     
  # 设置图的标题为'Plot 3'  
  ggtitle('Plot 3')    

# 绘制第四个图  
p4 <- ggplot(mtcars, aes(gear)) +     
  # 绘制条形图,并设置填充颜色为淡蓝色  
  geom_bar(fill = "lightblue") +     
  # 根据cyl的值进行分面  
  facet_wrap(~cyl) +     
  # 设置图的标题为'Plot 4'  
  ggtitle('Plot 4')

拼图

将第一个图和第二个图横向拼接:

p1 + p2

将第一个图和第二个图横向拼接,并设置副标题:

p1 + p2 + labs(subtitle = 'This will appear in the last plot')

将四个图横向拼接:

p1 + p2 + p3 + p4

将四个图以3行排列,不按行排列:

p1 + p2 + p3 + p4 + plot_layout(nrow = 3, byrow = FALSE)

将第一个图和第二个图垂直拼接:

p1 / p2

将第二个图和第三个图垂直拼接,再将结果与第一个图横向拼接:

p1 | (p2 / p3)

将(p1 | (p2 / p3))的结果与注释组合,设置整体标题:

(p1 | (p2 / p3)) +   
  plot_annotation(title = 'The surprising story about mtcars')

将前三个图横向拼接,并为每个图添加标签:

p1 + p2 + p3 +   
  plot_annotation(tag_levels = 'I')

欢迎加入

参考资料:https://patchwork.data-imaginist.com/articles/patchwork.html



继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存